Technical Q&A QA1142
Preventing crashes when using multiple disabled but editable NSComboBoxes


Q: Mac OS X 10.1.x Ç≈ÇÕÅAñ≥å¯Ç…ǵǃǢÇÈÇØÇÍǫLJï“èWâ¬î\Ç»èÛë‘Çà NSComboBox Ç™ÉrÉÖÅ[ÇÃíÜÇ… 2 Ǭà»è„džÇÈÇΔÇ´ÅAǪÇà 1 ǬÇÉNÉäÉbÉNÇ∑ÇÈÇΔÅAçÏê¨ÇµÇΩ Cocoa ÉAÉvÉäÉPÅ[ÉVÉáÉìÇ™ÉNÉâÉbÉVÉÖǵNjÇ∑ÅBÇ«ÇÃÇÊǧDžǵÇΩÇÁDZÇÍÇñhÇÆÇ±ÇΔÇ™Ç≈Ç´ÇÈÇÃÇ≈ǵÇÂǧǩÅH

A: DZÇÍÇÕÅAéüÇà Mac OS X ÇÃÉÅÉWÉÉÅ[ÉäÉäÅ[ÉXÇ≈èCê≥ÇµÇ»ÇØÇÍnjǻÇÁǻǢÉoÉOÇ≈Ç∑ÅBâÒîï˚ñ@ÇÕÅAǩǻÇËä»íPÇ≈Ç∑ÅBÉäÉXÉg 1 Ç≈é¶Ç∑ÇÊǧDžÅA-acceptsFirstResponder ÇÉIÅ[ÉoÅ[ÉâÉCÉhÇ∑ÇÈ NSComboBox ÇÃÉTÉuÉNÉâÉXÇégǢNjÇ∑ÅB



 @implementation MyComboBox
- (BOOL) acceptsFirstResponder {
       if ([self isEnabled] || NSAppKitVersionNumber>=636)
       return [super acceptsFirstResponder];
       else
    return NO;
}
@end

ÉäÉXÉg 1Å@NSComboBox ÉoÉOÇÃèCê≥




[2002 6 åé 3 ì˙]